Prototyping Proof Carrying Code

نویسندگان

  • Martin Wildmoser
  • Tobias Nipkow
  • Gerwin Klein
  • Sebastian Nanz
چکیده

We introduce a generic framework for proof carrying code, developed and mechanically verified in Isabelle/HOL. The framework defines and proves sound a verification condition generator with minimal assumptions on the underlying programming language, safety policy, and safety logic. We demonstrate its usability for prototyping proof carrying code systems by instantiating it to a simple assembly language with procedures and a safety policy for arithmetic overflow.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Foundational Proof-Carrying Code

Proof-carrying code is a framework for the mechanical verification of safety properties of machine language programs, but the problem arises of quis custodiat ipsos custodes—who will verify the verifier itself? Foundational proof-carrying code is verification from the smallest possible set of axioms, using the simplest possible verifier and the smallest possible runtime system. I will describe ...

متن کامل

Proofs of Safety for Untrusted Code

Proof-carrying code is a technique that can be used to execute untrusted code safely. A code consumer speci es requirements and safety rules which de ne the safe behavior of a system, and a code producer packages each program with a formal proof that the program satis es the requirements. The consumer uses a fast proof validator to check that the proof is correct, and hence the program is safe....

متن کامل

Proof Carrying Code

Proof-Carrying Code (PCC) is a technique that can be used for safe execution of untrusted code. In a typical instance of PCC, a code receiver establishes a set of safety rules that guarantee safe behavior of programs, and the code producer creates a formal safety proof that proves, for the untrusted code, adherence to the safety rules. Then, the receiver is able to use a simple and fast proof v...

متن کامل

Code-Carrying Proofs

Code Carrying Proofs are an alternative to the Proof Carrying Code (PCC) approach to secure delivery of code. With PCC, code is accompanied by a proof of its correctness or of other required properties. The code consumer does not accept delivery unless it first succeeds in generating theorems from the code called verification conditions and checking that the supplied proof proves these theorems...

متن کامل

A Semantic Model of Types and Machine Instructions for Proof-Carrying Code

Proof-carrying code is a framework for proving the safety of machine-language programs with a machinecheckable proof. Such proofs have previously defined type-checking rules as part of the logic. We show a universal type framework for proof-carrying code that will allow a code producer to choose a programming language, prove the type rules for that language as lemmas in higher-order logic, then...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2004